summaryrefslogtreecommitdiff
path: root/regcomp.c
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2001-12-23 16:43:29 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2001-12-23 16:43:29 +0000
commit09091399717abb9634c88f60ff8b2384a3297c16 (patch)
treea1b23df22ddffabb56077af6dc5f7515d6a6d7ab /regcomp.c
parentb0657ef2a740ab37fc663c0a808851a7a2133b90 (diff)
downloadperl-09091399717abb9634c88f60ff8b2384a3297c16.tar.gz
The funky final sigma casefolding.
p4raw-id: //depot/perl@13866
Diffstat (limited to 'regcomp.c')
-rw-r--r--regcomp.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/regcomp.c b/regcomp.c
index 2e0943ea6e..ea98177a9f 100644
--- a/regcomp.c
+++ b/regcomp.c
@@ -3981,9 +3981,21 @@ S_regclass(pTHX_ RExC_state_t *pRExC_state)
if (prevvalue < value)
Perl_sv_catpvf(aTHX_ listsv, "%04"UVxf"\t%04"UVxf"\n",
(UV)prevvalue, (UV)value);
- else if (prevvalue == value)
+ else if (prevvalue == value) {
Perl_sv_catpvf(aTHX_ listsv, "%04"UVxf"\n",
(UV)value);
+ if (FOLD) {
+ if (value == UNICODE_GREEK_SMALL_LETTER_FINAL_SIGMA) {
+ Perl_sv_catpvf(aTHX_ listsv, "%04"UVxf"\n",
+ UNICODE_GREEK_CAPITAL_LETTER_SIGMA);
+ Perl_sv_catpvf(aTHX_ listsv, "%04"UVxf"\n",
+ UNICODE_GREEK_SMALL_LETTER_SIGMA);
+ }
+ else if (value == UNICODE_GREEK_CAPITAL_LETTER_SIGMA)
+ Perl_sv_catpvf(aTHX_ listsv, "%04"UVxf"\n",
+ UNICODE_GREEK_SMALL_LETTER_SIGMA);
+ }
+ }
}
}