Re: RELEASE STOPPER? nonportable int64 constants in pg_crc.c - Mailing list pgsql-hackers

From Tom Lane
Subject Re: RELEASE STOPPER? nonportable int64 constants in pg_crc.c
Date
Msg-id 2795.985229500@sss.pgh.pa.us
Whole thread Raw
In response to Re: RELEASE STOPPER? nonportable int64 constants in pg_crc.c  (Peter Eisentraut <peter_e@gmx.net>)
Responses Re: RELEASE STOPPER? nonportable int64 constants in pg_crc.c  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-hackers
Peter Eisentraut <peter_e@gmx.net> writes:
> I don't think it's the answer either.  The patch assumes that int64 ==
> long long.  The ugly solution might have to be:

> #if <int64 == long>
> #define L64 L
> #else
> #define L64 LL
> #endif

> const uint64 crc_table[256] = {
>     0x0000000000000000##L64, 0x42F0E1EBA9EA3693##L64,
>     0x85E1C3D753D46D26##L64, 0xC711223CFA3E5BB5##L64,

Hmm ... how portable is that likely to be?  I don't want to suppress
warnings on a few boxes at the cost of breaking even one platform
that would otherwise work.  See my reply to Andreas.
        regards, tom lane


pgsql-hackers by date:

Previous
From: The Hermit Hacker
Date:
Subject: Re: Re: RELEASE STOPPER? nonportable int64 constants in pg_crc.c
Next
From: Tom Lane
Date:
Subject: Re: elog with automatic file, line, and function