Re: Windows 64 bit warnings
| От | Tom Lane |
|---|---|
| Тема | Re: Windows 64 bit warnings |
| Дата | |
| Msg-id | 3740.1303146055@sss.pgh.pa.us обсуждение |
| Ответ на | Re: Windows 64 bit warnings (Alvaro Herrera <alvherre@commandprompt.com>) |
| Ответы |
Re: Windows 64 bit warnings
|
| Список | pgsql-hackers |
Alvaro Herrera <alvherre@commandprompt.com> writes:
> Excerpts from Andrew Dunstan's message of sáb abr 16 21:46:44 -0300 2011:
>> The other, slightly more serious case, is at
>> src/test/regress/pg_regress.c:2280, which is this code:
>>
>> printf(_("running on port %d with pid %lu\n"),
>> port, (unsigned long) postmaster_pid);
>>
>> Here the postmaster_pid is in fact a HANDLE which is 8 bytes, and so it
>> should probably be cast to an unsigned long long and rendered with the
>> format %llu in Win64.
> Is this "uint64" and UINT64_FORMAT?
Considering that this is a purely informational printout, I don't see
any reason to give a damn about the possibility of high-order bits in
the HANDLE being dropped. And it's not an especially good idea to stick
UINT64_FORMAT into a translatable string, because of the platform
dependency that creates.
I think all we need here is a way to shut up the overly-anal-retentive
warning. I would have expected that explicit cast to be enough,
actually, but apparently it's not. Ideas?
regards, tom lane
В списке pgsql-hackers по дате отправления: