Skip to content

Commit 1f07a91

Browse files
committed
mktables: Support new Unicode 16.0 properties ID_Compat_Math_foo
These new properties are automatically handled, but there is a problem. They have no short form names. Files are written for them based on their names, and those files are not distinguishable on a DOS 8.3 file system. The solution here is to manually override the automatically generated file names with distinguishable ones.
1 parent aa6faba commit 1f07a91

6 files changed

+18
-6
lines changed

charclass_invlists.inc

+1-1
Original file line numberDiff line numberDiff line change
@@ -436055,7 +436055,7 @@ static const U8 WB_table[23][23] = {
436055436055
* 3f4f32ed2a577344a508114527e721d7a8b633d32f38945d47fe0c743650c585 lib/unicore/extracted/DLineBreak.txt
436056436056
* 710abf2d581ac9c57f244c0834f9d9969d9781e0396adccd330eaae658ac7d6b lib/unicore/extracted/DNumType.txt
436057436057
* 6bd30f385f3baf3ab5d5308c111a81de87bea5f494ba0ba69e8ab45263b8c34d lib/unicore/extracted/DNumValues.txt
436058-
* 803999c789a4780e22aa278e3dfa95162e48a0d329aa993cda26b99116672651 lib/unicore/mktables
436058+
* 52af47e14e5de40ccba986bd59c6d8c863de93e3d231f7ecca62feb9c2b2990a lib/unicore/mktables
436059436059
* 55d90fdc3f902e5c0b16b3378f9eaa36e970a1c09723c33de7d47d0370044012 lib/unicore/version
436060436060
* 0a6b5ab33bb1026531f816efe81aea1a8ffcd34a27cbea37dd6a70a63d73c844 regen/charset_translations.pl
436061436061
* c7ff8e0d207d3538c7feb4a1a152b159e5e902d20293b303569ea8323e84633e regen/mk_PL_charclass.pl

lib/unicore/mktables

+13-1
Original file line numberDiff line numberDiff line change
@@ -8820,7 +8820,7 @@ sub trace { return main::trace(@_) if main::DEBUG && $to_trace }
88208820
# filesystem to distinguish between, this is used to manually give short
88218821
# names for the directory name immediately under $match_tables that the
88228822
# match tables for this property should be placed in.
8823-
main::set_access('match_subdir', \%match_subdir, 'r');
8823+
main::set_access('match_subdir', \%match_subdir, 'r', 's');
88248824

88258825
my %has_dependency;
88268826
# A boolean that gives whether some table somewhere is defined as the
@@ -10072,6 +10072,14 @@ sub finish_property_setup($file) {
1007210072

1007310073
property_ref('Numeric_Value')->set_to_output_map($OUTPUT_ADJUSTED);
1007410074

10075+
# These two properties have no short names and the file names for them
10076+
# clash in DOS 8.3. Work around this by creating shorter file names that
10077+
# work
10078+
my $IDCMStart = property_ref("ID_Compat_Math_Start");
10079+
$IDCMStart->set_match_subdir("IDCMStart") if defined $IDCMStart;
10080+
my $IDCMCont= property_ref("ID_Compat_Math_Continue");
10081+
$IDCMCont->set_match_subdir("IDCMContinue") if defined $IDCMCont;
10082+
1007510083
# The rest of this sub is for properties that need the Multi_Default class
1007610084
# to create objects for defaults. As of v15.0, this is no longer needed.
1007710085

@@ -13748,6 +13756,10 @@ END
1374813756
next if $range->start == 0x1D7CE; # This whole range was added in 3.1
1374913757
next if $range->end == 0x19DA && $v_version eq v5.2.0;
1375013758
next if $range->end - $range->start < 9 && $v_version le 4.0.0;
13759+
13760+
# 2 sequential series of 10 each were added in 16.0
13761+
next if $range->start == 0x116D0 && $range->end == 0x116E3;
13762+
1375113763
Carp::my_carp("Range $range unexpectedly doesn't contain 10"
1375213764
. " decimal digits. Code in regcomp.c assumes it does,"
1375313765
. " and will have to be fixed. Proceeding anyway.");

lib/unicore/uni_keywords.pl

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

regcharclass.h

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

regexp_constants.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@
7878
* 3f4f32ed2a577344a508114527e721d7a8b633d32f38945d47fe0c743650c585 lib/unicore/extracted/DLineBreak.txt
7979
* 710abf2d581ac9c57f244c0834f9d9969d9781e0396adccd330eaae658ac7d6b lib/unicore/extracted/DNumType.txt
8080
* 6bd30f385f3baf3ab5d5308c111a81de87bea5f494ba0ba69e8ab45263b8c34d lib/unicore/extracted/DNumValues.txt
81-
* 803999c789a4780e22aa278e3dfa95162e48a0d329aa993cda26b99116672651 lib/unicore/mktables
81+
* 52af47e14e5de40ccba986bd59c6d8c863de93e3d231f7ecca62feb9c2b2990a lib/unicore/mktables
8282
* 55d90fdc3f902e5c0b16b3378f9eaa36e970a1c09723c33de7d47d0370044012 lib/unicore/version
8383
* 0a6b5ab33bb1026531f816efe81aea1a8ffcd34a27cbea37dd6a70a63d73c844 regen/charset_translations.pl
8484
* c7ff8e0d207d3538c7feb4a1a152b159e5e902d20293b303569ea8323e84633e regen/mk_PL_charclass.pl

uni_keywords.h

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)