Re: [PATCH] PostgreSQL fails to build with 32bit MinGW-w64
Andrew Dunstan <andrew@dunslane.net>
From: Andrew Dunstan <andrew@dunslane.net>
To: NISHIYAMA Tomoaki <tomoakin@staff.kanazawa-u.ac.jp>
Cc: pgsql-hackers@postgresql.org, Magnus Hagander <magnus@hagander.net>
Date: 2011-12-05T23:27:29Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Remove troublesome Asserts in cost_mergejoin().
- ff68b256a533 9.2.0 cited
-
Enable building with the Mingw64 compiler.
- 91812df4ed0f 9.1.0 cited
On 12/05/2011 09:31 AM, NISHIYAMA Tomoaki wrote:
> Hi,
>
> If we are not to use 64 bit file size (and time),
> #undef stat may be sufficient. The #undef should be
> before the prototype of pgwin32_safestat because the
> #define stat _stat64 affect both the function and struct stat.
> The #undef stat necessitate #undef fstat as the parameter
> struct stat * is changed.
I don't think I'm going to do it that way, but leave this with me, I can
take it from here. Right now I'm down to the following interesting
regression failure:
$ cat regression.diffs
***
C:/MinGW/msys/1.0/home/pgrunner/bf/root32/HEAD/pgsql/src/test/regress/expected/float8-exp-three-digits-win32.out
Fri Nov 25 14:24:49 2011
---
C:/MinGW/msys/1.0/home/pgrunner/bf/root32/HEAD/pgsql/src/test/regress/results/float8.out
Mon Dec 5 18:17:36 2011
***************
*** 382,388 ****
SET f1 = FLOAT8_TBL.f1 * '-1'
WHERE FLOAT8_TBL.f1 > '0.0';
SELECT '' AS bad, f.f1 * '1e200' from FLOAT8_TBL f;
! ERROR: value out of range: overflow
SELECT '' AS bad, f.f1 ^ '1e200' from FLOAT8_TBL f;
ERROR: value out of range: overflow
SELECT 0 ^ 0 + 0 ^ 1 + 0 ^ 0.0 + 0 ^ 0.5;
--- 382,396 ----
SET f1 = FLOAT8_TBL.f1 * '-1'
WHERE FLOAT8_TBL.f1 > '0.0';
SELECT '' AS bad, f.f1 * '1e200' from FLOAT8_TBL f;
! bad | ?column?
! -----+------------------
! | 0
! | -3.484e+201
! | -1.0043e+203
! | -Infinity
! | -1.2345678901234
! (5 rows)
!
SELECT '' AS bad, f.f1 ^ '1e200' from FLOAT8_TBL f;
ERROR: value out of range: overflow
SELECT 0 ^ 0 + 0 ^ 1 + 0 ^ 0.0 + 0 ^ 0.5;
======================================================================
cheers
andrew