| 3165 | |
| 3166 | |
| 3167 | staticfn boolean |
| 3168 | ch_ksound(const char *basestr) |
| 3169 | { |
| 3170 | /* these are some *ch words/suffixes that make a k-sound. They pluralize by |
| 3171 | adding 's' rather than 'es' */ |
| 3172 | static const char *const ch_k[] = { |
| 3173 | "monarch", "poch", "tech", "mech", "stomach", "psych", |
| 3174 | "amphibrach", "anarch", "atriarch", "azedarach", "broch", |
| 3175 | "gastrotrich", "isopach", "loch", "oligarch", "peritrich", |
| 3176 | "sandarach", "sumach", "symposiarch", |
| 3177 | }; |
| 3178 | int i, al; |
| 3179 | const char *endstr; |
| 3180 | |
| 3181 | if (!basestr || strlen(basestr) < 4) |
| 3182 | return FALSE; |
| 3183 | |
| 3184 | endstr = eos((char *) basestr); |
| 3185 | for (i = 0; i < SIZE(ch_k); i++) { |
| 3186 | al = (int) strlen(ch_k[i]); |
| 3187 | if (!BSTRCMPI(basestr, endstr - al, ch_k[i])) |
| 3188 | return TRUE; |
| 3189 | } |
| 3190 | return FALSE; |
| 3191 | } |
| 3192 | |
| 3193 | staticfn boolean |
| 3194 | badman( |