Re: A couple of gripes about the gettext plurals patch

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: A couple of gripes about the gettext plurals patch
Date: 2009-05-26 18:05:29
Message-ID: 16007.1243361129@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Peter Eisentraut <peter_e(at)gmx(dot)net> writes:
> I tried throwing various kinds of subtle garbage into the errmsg/ngettext
> line, but it was all discovered by gcc -Wall.

I experimented with this and found that indeed both format strings are
checked ... if you have a reasonably recent libintl.h AND you have
specified --enable-nls. Otherwise it all goes to heck, apparently
because the compiler doesn't try to look through our substitute
definition

#define ngettext(s,p,n) ((n) == 1 ? (s) : (p))

So I'm still of the opinion that we need some work here. I think
that instead of this #define we need an actual function that we can
hang a couple of __attribute_format_arg__ markers on. Otherwise
things are going to slip by us. (Not sure about you, but I don't
build with --enable-nls by default.)

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2009-05-26 18:20:13 Re: [PATCH] cleanup hashindex for pg_migrator hashindex compat mode (for 8.4)
Previous Message Gevik Babakhani 2009-05-26 17:58:55 Re: usability of pg_get_function_arguments