From d5e57590ce7a89f3431548def683d3553fb99b3a Mon Sep 17 00:00:00 2001
From: Alex Henrie <alexhenrie24@gmail.com>
Date: Wed, 28 Jan 2015 19:26:00 -0700
Subject: [PATCH] Revert "fix catalan plural rules"

This reverts commit f1e471b561012f90938766c00aefff417593e71f.

I could not find any evidence that any dialect of Catalan has more than
two plural forms, nor could I find any other software project that gives
Catalan more than two plural forms. I personally have never heard or
seen more than two plural forms used in spoken or written communication.

The CLDR seems to agree with this.

[ChangeLog][Linguist][Important Behavior Changes] The plural rules for
Catalan have been fixed, which will invalidate any existing translations
with plurals.

Change-Id: Id71639a75ec970ee3079b468c2628ced710c1c3a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Alex Henrie <alexhenrie24@gmail.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
---
 src/linguist/shared/numerus.cpp | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/src/linguist/shared/numerus.cpp b/src/linguist/shared/numerus.cpp
index 674cf4ae8..4695d00f5 100644
--- a/src/linguist/shared/numerus.cpp
+++ b/src/linguist/shared/numerus.cpp
@@ -100,9 +100,6 @@ static const uchar arabicRules[] =
 static const uchar tagalogRules[] =
     { Q_LEQ, 1, Q_NEWRULE,
       Q_MOD_10 | Q_EQ, 4, Q_OR, Q_MOD_10 | Q_EQ, 6, Q_OR, Q_MOD_10 | Q_EQ, 9 };
-static const uchar catalanRules[] =
-    { Q_EQ, 1, Q_NEWRULE,
-      Q_LEAD_1000 | Q_EQ, 11 };
 
 static const char * const japaneseStyleForms[] = { "Universal Form", 0 };
 static const char * const englishStyleForms[] = { "Singular", "Plural", 0 };
@@ -128,7 +125,6 @@ static const char * const arabicForms[] =
     { "Nullar", "Singular", "Dual", "Minority Plural", "Plural", "Plural (100-102, ...)", 0 };
 static const char * const tagalogForms[] =
     { "Singular", "Plural (consonant-ended)", "Plural (vowel-ended)", 0 };
-static const char * const catalanForms[] = { "Singular", "Undecal (11)", "Plural", 0 };
 
 #define EOL QLocale::C
 
@@ -173,6 +169,7 @@ static const QLocale::Language englishStyleLanguages[] = {
     QLocale::Bengali,
     QLocale::Bihari,
     QLocale::Bulgarian,
+    QLocale::Catalan,
     QLocale::Cornish,
     QLocale::Corsican,
     QLocale::Danish,
@@ -301,7 +298,6 @@ static const QLocale::Language malteseLanguage[] = { QLocale::Maltese, EOL };
 static const QLocale::Language welshLanguage[] = { QLocale::Welsh, EOL };
 static const QLocale::Language arabicLanguage[] = { QLocale::Arabic, EOL };
 static const QLocale::Language tagalogLanguage[] = { QLocale::Tagalog, EOL };
-static const QLocale::Language catalanLanguage[] = { QLocale::Catalan, EOL };
 
 static const QLocale::Country frenchStyleCountries[] = {
     // keep synchronized with frenchStyleLanguages
@@ -357,8 +353,6 @@ static const NumerusTableEntry numerusTable[] = {
       "nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : (n%100>=3 && n%100<=10) ? 3 : n%100>=11 ? 4 : 5);" },
     { tagalogRules, sizeof(tagalogRules), tagalogForms, tagalogLanguage, 0,
       "nplurals=3; plural=(n==1 ? 0 : (n%10==4 || n%10==6 || n%10== 9) ? 1 : 2);" },
-    { catalanRules, sizeof(catalanRules), catalanForms, catalanLanguage, 0,
-      "nplurals=3; plural=(n==1 ? 0 : (n==11 || n/1000==11 || n/1000000==11 || n/1000000000==11) ? 1 : 2);" },
 };
 
 static const int NumerusTableSize = sizeof(numerusTable) / sizeof(numerusTable[0]);
-- 
GitLab