On Fri, 14 Mar 2008, ITAGAKI Takahiro wrote:

> DWORD is an alias for 'unsigned long' in 32bit Windows.
> Do you know how it defined in 64bit Windows?

sizeof(DWORD) is always 4, even on 64-bit windows.  sizeof(long) is also
always 4.  If you want the unsigned integral type that is the same size as
pointers, there are some MS-defined types you can use: DWORD_PTR,
LONG_PTR, ULONG_PTR.  Or use the standard size_t and ptrdiff_t.

>
> Postgres requires sizeof(long) = sizeof(void *)

Which is why 64-bit windows is not supported.  Hopefully at some point
someone can remove this restriction, but it is likely to be a major
undertaking...

>, but sizeof(DWORD) is
> always 4. I fear the formatter for long integer might be broken
> in 64bit platform.
>
> If we could expect C99 is always available, 'PRIu32' would be the best choice.
>
> Regards,
> ---
> ITAGAKI Takahiro
> NTT Open Source Software Center
>
>
>
>

-- 
Worst Month of 1981 for Downhill Skiing:
        August.  The lines are the shortest, though.
                -- Steve Rubenstein

-- 
Sent via pgsql-patches mailing list (pgsql-patches@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-patches

Reply via email to