diff --git a/docs/processes/cldr-icu.md b/docs/processes/cldr-icu.md index 3b212dead59a..4cf53813f534 100644 --- a/docs/processes/cldr-icu.md +++ b/docs/processes/cldr-icu.md @@ -285,6 +285,24 @@ Paste the following block after the dictionaries block and before the final clos } ``` +5f. Update hard-coded lists in ICU + +ICU4 has some hard-coded lists of locale-related codes that may need updating. Ideally these should +be replaced by data converted from CLDR ([ICU-22839](https://unicode-org.atlassian.net/browse/ICU-22839)). In the +meantime these need to be updated manually. + +| code type | icu4c/source library file(s) | icu4c/source test file(s) | +| -------------------------------------------------------------------------------------------- | ------------------------------------------- | ------------------------------------------- | +| language
(at least all language codes in ICU locales or CLDR attributeValueValidity.xml) | common/uloc.cpp: LANGUAGES[], LANGUAGES_3[] | test/testdata/structLocale.txt: Languages | +| region
(at least all region codes in ICU locales or CLDR attributeValueValidity.xml) | common/uloc.cpp: COUNTRIES[], COUNTRIES_3[] | test/testdata/structLocale.txt: Countries | +| currency (see note below)
(at least everything in CLDR supplementalData.xml currencyData) | common/ucurr.cpp: gCurrencyList[]] | test/testdata/structLocale.txt: Currencies,CurrencyPlurals
test/cintltst/currtest.c:TestEnumList() | +| timezone | (not currently aware of hard-coded list) | test/testdata/structLocale.txt: zoneStrings | + +Note: currency code lists are also in other code lists along with measurement units, +but these are re-generated using the procedure in +[Updating MeasureUnit with new CLDR data](https://unicode-org.github.io/icu/processes/release/tasks/updating-measure-unit.html) +(also mentioned in step 14 below). + ## 6 Check the results Check which data files have modifications, which have been added or removed