summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--charclass_invlists.h2
-rw-r--r--regen/mk_invlists.pl9
2 files changed, 10 insertions, 1 deletions
diff --git a/charclass_invlists.h b/charclass_invlists.h
index 4b484cec49..033b936879 100644
--- a/charclass_invlists.h
+++ b/charclass_invlists.h
@@ -50142,5 +50142,5 @@ static const UV XPosixXDigit_invlist[] = { /* for EBCDIC POSIX-BC */
* a17a0330e57d774343a53c019f1bc69827c2676982a1bf48e0898a76710e8877 lib/unicore/extracted/DNumType.txt
* c2cb810a67cc5fb4a8d236b6c1bc6dd4d89733d8603881997e8aae2c816a3db1 lib/unicore/extracted/DNumValues.txt
* 746472de66b936ac885ca6d6e68058242b4e909e3260c6317f3ec719f78f76cc lib/unicore/version
- * 3f719771a87dc82fc3d9caa36fe3f2de7545f4d6b0d91d2e1c0132957698b915 regen/mk_invlists.pl
+ * 5d78580583171ad62648e20a2363331a2f67c262c14f660c4914882db8a2f021 regen/mk_invlists.pl
* ex: set ro: */
diff --git a/regen/mk_invlists.pl b/regen/mk_invlists.pl
index 5d15690a1c..4902f6e1c5 100644
--- a/regen/mk_invlists.pl
+++ b/regen/mk_invlists.pl
@@ -230,6 +230,14 @@ for my $charset (get_supported_code_pages()) {
@invlist = prop_invlist($lookup_prop, '_perl_core_internal_ok');
}
die "Could not find inversion list for '$lookup_prop'" unless @invlist;
+
+ # Re-order the Unicode code points to native ones for this platform;
+ # only needed for code points below 256, and only if the first range
+ # doesn't span the whole of 0..256 (256 not 255 because a re-ordering
+ # could cause 256 to need to be in the same range as 255.)
+ if (! $nonl1_only || ($invlist[0] < 256
+ && ! ($invlist[0] == 0 && $invlist[1] > 256)))
+ {
my @full_list;
for (my $i = 0; $i < @invlist; $i += 2) {
my $upper = ($i + 1) < @invlist
@@ -250,6 +258,7 @@ for my $charset (get_supported_code_pages()) {
}
@full_list = sort { $a <=> $b } @full_list;
@invlist = mk_invlist_from_cp_list(\@full_list);
+ }
if ($l1_only) {
for my $i (0 .. @invlist - 1 - 1) {