summaryrefslogtreecommitdiff
path: root/locale
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2007-10-03 19:32:28 +0000
committerJakub Jelinek <jakub@redhat.com>2007-10-03 19:32:28 +0000
commit75cb5a0d471729d28a59b693441e2d527c9e962e (patch)
treeabac9733c1b6c0a7a9c760b7cfe2d21c672e9e90 /locale
parent441097af93882803bbb3296dd1fdbdd4a7773deb (diff)
Updated to fedora-glibc-20071003T1908cvs/fedora-glibc-2_6_90-17
Diffstat (limited to 'locale')
-rw-r--r--locale/iso-639.def14
-rw-r--r--locale/programs/ld-collate.c24
2 files changed, 28 insertions, 10 deletions
diff --git a/locale/iso-639.def b/locale/iso-639.def
index 0507ba5c91..80b61a35f9 100644
--- a/locale/iso-639.def
+++ b/locale/iso-639.def
@@ -17,13 +17,16 @@ DEFINE_LANGUAGE_CODE ("Afar", aa, aar, aar)
DEFINE_LANGUAGE_CODE3 ("Afrihili", afh, afh)
DEFINE_LANGUAGE_CODE ("Afrikaans", af, afr, afr)
DEFINE_LANGUAGE_CODE3 ("Afro-Asiatic (Other)", afa, afa)
+DEFINE_LANGUAGE_CODE3 ("Ainu", ain, ain)
DEFINE_LANGUAGE_CODE ("Akan", ak, aka, aka)
DEFINE_LANGUAGE_CODE3 ("Akkadian", akk, akk)
DEFINE_LANGUAGE_CODE ("Albanian", sq, sqi, alb)
DEFINE_LANGUAGE_CODE3 ("Aleut", ale, ale)
DEFINE_LANGUAGE_CODE3 ("Algonquian languages", alg, alg)
+DEFINE_LANGUAGE_CODE3 ("Southern Altai", alt, alt)
DEFINE_LANGUAGE_CODE3 ("Altaic (Other)", tut, tut)
DEFINE_LANGUAGE_CODE ("Amharic", am, amh, amh)
+DEFINE_LANGUAGE_CODE3 ("Angika", anp, anp)
DEFINE_LANGUAGE_CODE3 ("Apache languages", apa, apa)
DEFINE_LANGUAGE_CODE ("Arabic", ar, ara, ara)
DEFINE_LANGUAGE_CODE ("Aragonese", an, arg, arg)
@@ -32,6 +35,7 @@ DEFINE_LANGUAGE_CODE3 ("Arapaho", arp, arp)
DEFINE_LANGUAGE_CODE3 ("Araucanian", arn, arn)
DEFINE_LANGUAGE_CODE3 ("Arawak", arw, arw)
DEFINE_LANGUAGE_CODE ("Armenian", hy, hye, arm)
+DEFINE_LANGUAGE_CODE3 ("Aromanian; Arumanian; Macedo-Romanian", rup, rup)
DEFINE_LANGUAGE_CODE3 ("Artificial (Other)", art, art)
DEFINE_LANGUAGE_CODE ("Assamese", as, asm, asm)
DEFINE_LANGUAGE_CODE3 ("Asturian; Bable", ast, ast)
@@ -146,7 +150,9 @@ DEFINE_LANGUAGE_CODE3 ("Fon", fon, fon)
DEFINE_LANGUAGE_CODE3 ("French, Middle (ca.1400-1800)", frm, frm)
DEFINE_LANGUAGE_CODE3 ("French, Old (842-ca.1400)", fro, fro)
DEFINE_LANGUAGE_CODE ("French", fr, fra, fre)
-DEFINE_LANGUAGE_CODE ("Frisian", fy, fry, fry)
+DEFINE_LANGUAGE_CODE3 ("Northern Frisian", frr, frr)
+DEFINE_LANGUAGE_CODE3 ("Eastern Frisian", frs, frs)
+DEFINE_LANGUAGE_CODE ("Western Frisian", fy, fry, fry)
DEFINE_LANGUAGE_CODE3 ("Friulian", fur, fur)
DEFINE_LANGUAGE_CODE ("Fulah", ff, ful, ful)
DEFINE_LANGUAGE_CODE ("Gaelic; Scottish Gaelic", gd, gla, gla)
@@ -161,6 +167,7 @@ DEFINE_LANGUAGE_CODE3 ("German, Middle High (ca.1050-1500)", gmh, gmh)
DEFINE_LANGUAGE_CODE3 ("German, Old High (ca.750-1050)", goh, goh)
DEFINE_LANGUAGE_CODE3 ("Germanic (Other)", gem, gem)
DEFINE_LANGUAGE_CODE ("German", de, deu, ger)
+DEFINE_LANGUAGE_CODE3 ("Swiss German; Alemannic", gsw, gsw)
DEFINE_LANGUAGE_CODE3 ("Gilbertese", gil, gil)
DEFINE_LANGUAGE_CODE3 ("Gondi", gon, gon)
DEFINE_LANGUAGE_CODE3 ("Gorontalo", gor, gor)
@@ -220,6 +227,7 @@ DEFINE_LANGUAGE_CODE ("Kannada", kn, kan, kan)
DEFINE_LANGUAGE_CODE ("Kanuri", kr, kau, kau)
DEFINE_LANGUAGE_CODE3 ("Kara-Kalpak", kaa, kaa)
DEFINE_LANGUAGE_CODE3 ("Karachay-Balkar", krc, krc)
+DEFINE_LANGUAGE_CODE3 ("Karelian", krl, krl)
DEFINE_LANGUAGE_CODE3 ("Karen", kar, kar)
DEFINE_LANGUAGE_CODE ("Kashmiri", ks, kas, kas)
DEFINE_LANGUAGE_CODE3 ("Kashubian", csb, csb)
@@ -317,6 +325,7 @@ DEFINE_LANGUAGE_CODE3 ("Nias", nia, nia)
DEFINE_LANGUAGE_CODE3 ("Niger-Kordofanian (Other)", nic, nic)
DEFINE_LANGUAGE_CODE3 ("Nilo-Saharan (Other)", ssa, ssa)
DEFINE_LANGUAGE_CODE3 ("Niuean", niu, niu)
+DEFINE_LANGUAGE_CODE3 ("N'Ko", nqo, nqo)
DEFINE_LANGUAGE_CODE3 ("Nogai", nog, nog)
DEFINE_LANGUAGE_CODE3 ("Norse, Old", non, non)
DEFINE_LANGUAGE_CODE3 ("North American Indian", nai, nai)
@@ -405,6 +414,7 @@ DEFINE_LANGUAGE_CODE ("Sotho, Southern", st, sot, sot)
DEFINE_LANGUAGE_CODE3 ("South American Indian (Other)", sai, sai)
DEFINE_LANGUAGE_CODE3 ("Southern Sami", sma, sma)
DEFINE_LANGUAGE_CODE ("Spanish; Castilian", es, spa, spa)
+DEFINE_LANGUAGE_CODE3 ("Sranan Tongo", srn, srn)
DEFINE_LANGUAGE_CODE3 ("Sukuma", suk, suk)
DEFINE_LANGUAGE_CODE3 ("Sumerian", sux, sux)
DEFINE_LANGUAGE_CODE ("Sundanese", su, sun, sun)
@@ -412,6 +422,7 @@ DEFINE_LANGUAGE_CODE3 ("Susu", sus, sus)
DEFINE_LANGUAGE_CODE ("Swahili", sw, swa, swa)
DEFINE_LANGUAGE_CODE ("Swati", ss, ssw, ssw)
DEFINE_LANGUAGE_CODE ("Swedish", sv, swe, swe)
+DEFINE_LANGUAGE_CODE3 ("Classical Syriac", syc, syc)
DEFINE_LANGUAGE_CODE3 ("Syriac", syr, syr)
DEFINE_LANGUAGE_CODE ("Tagalog", tl, tgl, tgl)
DEFINE_LANGUAGE_CODE ("Tahitian", ty, tah, tah)
@@ -479,3 +490,4 @@ DEFINE_LANGUAGE_CODE3 ("Zenaga", zen, zen)
DEFINE_LANGUAGE_CODE ("Zhuang; Chuang", za, zha, zha)
DEFINE_LANGUAGE_CODE ("Zulu", zu, zul, zul)
DEFINE_LANGUAGE_CODE3 ("Zuni", zun, zun)
+DEFINE_LANGUAGE_CODE3 ("Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki", zza, zza)
diff --git a/locale/programs/ld-collate.c b/locale/programs/ld-collate.c
index feab034740..d6c3de0147 100644
--- a/locale/programs/ld-collate.c
+++ b/locale/programs/ld-collate.c
@@ -1545,9 +1545,10 @@ collate_finish (struct localedef_t *locale, const struct charmap_t *charmap)
or in none. */
for (i = 0; i < nrules; ++i)
for (sect = collate->sections; sect != NULL; sect = sect->next)
- if (sect->rules != NULL
+ if (sect != collate->current_section
+ && sect->rules != NULL
&& ((sect->rules[i] & sort_position)
- != (collate->sections->rules[i] & sort_position)))
+ != (collate->current_section->rules[i] & sort_position)))
{
WITH_CUR_LOCALE (error (0, 0, _("\
%s: `position' must be used for a specific level in all sections or none"),
@@ -1842,7 +1843,8 @@ symbol `%s' has the same encoding as"), (*eptr)->name);
while (osect != sect)
if (osect->rules != NULL
- && memcmp (osect->rules, sect->rules, nrules) == 0)
+ && memcmp (osect->rules, sect->rules,
+ nrules * sizeof (osect->rules[0])) == 0)
break;
else
osect = osect->next;
@@ -2659,7 +2661,6 @@ collate_read (struct linereader *ldfile, struct localedef_t *result,
if (nowtok == tok_copy)
{
- state = 2;
now = lr_token (ldfile, charmap, result, NULL, verbose);
if (now->tok != tok_string)
{
@@ -3214,13 +3215,16 @@ error while adding equivalent collating symbol"));
{
/* Insert sp in the collate->sections list,
right after collate->current_section. */
- if (collate->current_section == NULL)
- collate->current_section = sp;
- else
+ if (collate->current_section != NULL)
{
sp->next = collate->current_section->next;
collate->current_section->next = sp;
}
+ else if (collate->sections == NULL)
+ /* This is the first section to be defined. */
+ collate->sections = sp;
+
+ collate->current_section = sp;
}
/* Next should come the end of the line or a semicolon. */
@@ -3326,7 +3330,9 @@ error while adding equivalent collating symbol"));
was_ellipsis = tok_none;
}
}
- else if (state != 2 && state != 3)
+ else if (state == 0 && copy_locale == NULL)
+ goto err_label;
+ else if (state != 0 && state != 2 && state != 3)
goto err_label;
state = 3;
@@ -3795,7 +3801,7 @@ error while adding equivalent collating symbol"));
/* Next we assume `LC_COLLATE'. */
if (!ignore_content)
{
- if (state == 0)
+ if (state == 0 && copy_locale == NULL)
/* We must either see a copy statement or have
ordering values. */
lr_error (ldfile,