| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
| Cc: | Bruce Momjian <bruce(at)momjian(dot)us>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: -Wformat-zero-length |
| Date: | 2011-07-07 22:09:54 |
| Message-ID: | 4813.1310076594@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
I wrote:
> Peter Eisentraut <peter_e(at)gmx(dot)net> writes:
>> I was adding gcc printf attributes to more functions in obscure places,
>> and now I'm seeing this in pg_upgrade:
>> relfilenode.c:72:2: warning: zero-length gnu_printf format string [-Wformat-zero-length]
> Shouldn't it be prep_status("\n")? If not, why not?
On closer inspection, it appears to me that prep_status should never be
called with a string containing a newline, period, and the test it
contains for that case is just brain damage. The only reason to call it
at all is to produce a line like
message ......................
where something more is expected to be added to the line later. Calls
that are meant to produce a complete line could go directly to pg_log.
This in turn implies that transfer_all_new_dbs's use of the function is
broken and needs to be rethought.
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Noah Misch | 2011-07-07 22:35:28 | Re: [v9.2] Fix leaky-view problem, part 2 |
| Previous Message | Tom Lane | 2011-07-07 21:45:27 | Re: -Wformat-zero-length |