summaryrefslogtreecommitdiff
path: root/lib/unicore
diff options
context:
space:
mode:
authorKarl Williamson <khw@cpan.org>2015-07-27 08:12:02 -0600
committerKarl Williamson <khw@cpan.org>2015-07-28 22:15:58 -0600
commit02f811ddf7c78de43affe51e3337e3a4be99f9df (patch)
tree5465896747e679b00286edac2443a2841f094850 /lib/unicore
parent44e5d8e726fa8d0cd628c7455ad55ccb7ae9228d (diff)
downloadperl-02f811ddf7c78de43affe51e3337e3a4be99f9df.tar.gz
mktables: Fix GCB to work on early Unicodes
The GCB property was not properly being generated in early Unicode releases. The huge commit diff is due solely to the fact that the name changes of this property so it is sure to not be accessible outside the perl core, and the property tables are automatically resorted alphabetically.
Diffstat (limited to 'lib/unicore')
-rw-r--r--lib/unicore/mktables35
1 files changed, 13 insertions, 22 deletions
diff --git a/lib/unicore/mktables b/lib/unicore/mktables
index 7507e08155..e285a34bb4 100644
--- a/lib/unicore/mktables
+++ b/lib/unicore/mktables
@@ -9878,13 +9878,6 @@ sub finish_property_setup {
Property->new('JSN', Full_Name => 'Jamo_Short_Name');
}
- # This property must be defined in all releases so we can generate
- # the tables from it to make regex \X work, but suppress its output so
- # isn't application visible prior to releases where it should be
- if (! defined property_ref('GCB')) {
- Property->new('GCB', Full_Name => 'Grapheme_Cluster_Break',
- Fate => $PLACEHOLDER);
- }
# These are used so much, that we set globals for them.
$gc = property_ref('General_Category');
$block = property_ref('Block');
@@ -10214,16 +10207,16 @@ END
}
if ($v_version lt 4.1.0) {
$file->insert_lines(split /\n/, <<'END'
-GCB; CN ; Control
-GCB; CR ; CR
-GCB; EX ; Extend
-GCB; L ; L
-GCB; LF ; LF
-GCB; LV ; LV
-GCB; LVT ; LVT
-GCB; T ; T
-GCB; V ; V
-GCB; XX ; Other
+_Perl_GCB; CN ; Control
+_Perl_GCB; CR ; CR
+_Perl_GCB; EX ; Extend
+_Perl_GCB; L ; L
+_Perl_GCB; LF ; LF
+_Perl_GCB; LV ; LV
+_Perl_GCB; LVT ; LVT
+_Perl_GCB; T ; T
+_Perl_GCB; V ; V
+_Perl_GCB; XX ; Other
END
);
}
@@ -13105,7 +13098,7 @@ sub generate_GCB {
generate_hst($file);
}
- return;
+ main::process_generic_property_file($file);
}
sub setup_early_name_alias {
@@ -18810,12 +18803,10 @@ my @input_file_objects = (
Property => 'Word_Break',
Has_Missings_Defaults => $NOT_IGNORED,
),
- Input_file->new("$AUXILIARY/GraphemeBreakProperty.txt", v0,
+ Input_file->new("$AUXILIARY/GraphemeBreakProperty.txt", v4.1,
+ Early => [ \&generate_GCB, '_Perl_GCB' ],
Property => 'Grapheme_Cluster_Break',
Has_Missings_Defaults => $NOT_IGNORED,
- Pre_Handler => ($v_version lt v4.1.0)
- ? \&generate_GCB
- : undef,
),
Input_file->new("$AUXILIARY/GCBTest.txt", v4.1.0,
Handler => \&process_GCB_test,