Brings in main with #9210. The MBCS string forms keep convertString
and now encode UTF-16 with encodeUtf16, so GB 18030 supplementary
characters become surrogate pairs and UCS-2 answers UNASSIGNED_CODE.
The GB 18030 string test checks the short-buffer error in its own
buffer, since a failed conversion now terminates the output.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Implement sceCesUcsProfileInitGb18030_2000 and sceCesUcsProfileInitGb18030_2005.
Two-byte cells are the CP936 table plus the cells that differ, and four-byte
sequences are runs over the BMP and the supplementary planes, generated from
ICU's gb-18030-2000.ucm (before ICU-8427) and gb-18030-2005.ucm with ICU's
GB 18030 ranges. The GB, MBC and MBCS string conversions accept both profiles
and produce four-byte UTF-8 and surrogate pairs for supplementary characters.
Add the GBK (CP936) and EUC-CN profiles, their scalar conversions to
and from UTF-8, UTF-16, UTF-32 and UCS-2, and accept both profiles in
the MBCS string conversions.
Co-Authored-By: Claude Opus 5.5 <[email protected]>