Subject: | Incorrect character mapping in Encode::GSM0338 |
As you can see from the source code:
http://cpansearch.perl.org/src/DANKOGAI/Encode-
2.33/lib/Encode/GSM0338.pm
Encode::GSM maps 0x09 in GSM to lowercase c cedilla in Unicode (U+00E7).
"\x{00E7}" => "\x09", # LATIN SMALL LETTER C WITH CEDILLA
But I think this is wrong.
GSM 03.38 maps the same character to /uppercase/ c cedilla (U+00C7).
See ETSI TS 100 900 V7.2.0 (1999-07) Digital cellular telecommunications
system (Phase 2+); Alphabets and language-specific information (GSM
03.38 version 7.2.0 Release 1998), Section 6.2.1 ("Default Alphabet"):
http://pda.etsi.org/exchangefolder/ts_100900v070200p.pdf
So this line needs changing to:
"\x{00C7}" => "\x09", # LATIN CAPITAL LETTER C WITH CEDILLA