From: | Bharath Rupireddy <bharath(dot)rupireddyforpostgres(at)gmail(dot)com> |
---|---|
To: | Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com> |
Cc: | Daniel Gustafsson <daniel(at)yesql(dot)se>, Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Remove an unnecessary errmsg_plural in dependency.c |
Date: | 2022-03-24 13:34:20 |
Message-ID: | CALj2ACV+T+_uLbbk=sRP7-VnbJoeF6caK+E2FvVHpUDMSLG0EA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Thu, Mar 24, 2022 at 6:35 PM Peter Eisentraut
<peter(dot)eisentraut(at)enterprisedb(dot)com> wrote:
>
> On 24.03.22 13:48, Bharath Rupireddy wrote:
> > Yes, the singular version of the message isn't required at all as
> > numReportedClient > 1. Hence I proposed to remove errmsg_plural and
> > singular version.
>
> The issue is that n == 1 and n != 1 are not the only cases that
> errmsg_plural() handles. Some languages have different forms for n ==
> 1, n == 2, and n >= 5, for example. So while it is true that in
>
> errmsg_plural("drop cascades to %d other object",
> "drop cascades to %d other objects",
Thanks. I think I get the point - is it dngettext doing things
differently for different languages?
#define EVALUATE_MESSAGE_PLURAL(domain, targetfield, appendval) \
{ \
const char *fmt; \
StringInfoData buf; \
/* Internationalize the error format string */ \
if (!in_error_recursion_trouble()) \
fmt = dngettext((domain), fmt_singular, fmt_plural, n); \
else \
fmt = (n == 1 ? fmt_singular : fmt_plural); \
initStringInfo(&buf); \
Regards,
Bharath Rupireddy.
From | Date | Subject | |
---|---|---|---|
Next Message | Japin Li | 2022-03-24 13:36:51 | Re: turn fastgetattr and heap_getattr to inline functions |
Previous Message | Alvaro Herrera | 2022-03-24 13:26:10 | Re: turn fastgetattr and heap_getattr to inline functions |