Re: Suppress compiler warnings on mingw - Mailing list pgsql-patches

From Jeremy Drake
Subject Re: Suppress compiler warnings on mingw
Date
Msg-id Pine.BSO.4.64.0803140836250.14567@resin.csoft.net
Whole thread Raw
In response to Re: Suppress compiler warnings on mingw  (ITAGAKI Takahiro <itagaki.takahiro@oss.ntt.co.jp>)
List pgsql-patches
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

pgsql-patches by date:

Previous
From: Devrim GÜNDÜZ
Date:
Subject: Re: minor init script fix
Next
From: Peter Eisentraut
Date:
Subject: Re: Suppress compiler warnings on mingw