From 87707dca53cde5692c9795ea8a07471a5fda17d7 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Mon, 29 Jun 2026 13:37:54 +0200 Subject: [PATCH v1 04/15] Move Windows ssize_t definition earlier It needs to be much earlier in win32_port.h so that declarations in that file can also use it. --- src/include/port/win32_port.h | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/src/include/port/win32_port.h b/src/include/port/win32_port.h index 956c0b4b4c3..2bad3688e91 100644 --- a/src/include/port/win32_port.h +++ b/src/include/port/win32_port.h @@ -210,6 +210,23 @@ extern pgoff_t _pgftello64(FILE *stream); #endif #endif +/* Things that exist in MinGW headers, but need to be added to MSVC */ +#ifdef _MSC_VER + +#ifndef _WIN64 +typedef long ssize_t; +#else +typedef __int64 ssize_t; +#endif + +typedef unsigned short mode_t; + +#define F_OK 0 +#define W_OK 2 +#define R_OK 4 + +#endif /* _MSC_VER */ + /* * Win32 also doesn't have symlinks, but we can emulate them with * junction points on newer Win32 versions. @@ -549,23 +566,6 @@ extern int pgwin32_is_admin(void); /* Windows security token manipulation (in src/common/exec.c) */ extern BOOL AddUserToTokenDacl(HANDLE hToken); -/* Things that exist in MinGW headers, but need to be added to MSVC */ -#ifdef _MSC_VER - -#ifndef _WIN64 -typedef long ssize_t; -#else -typedef __int64 ssize_t; -#endif - -typedef unsigned short mode_t; - -#define F_OK 0 -#define W_OK 2 -#define R_OK 4 - -#endif /* _MSC_VER */ - #if defined(__MINGW32__) || defined(__MINGW64__) /* * Mingw claims to have a strtof, and my reading of its source code suggests -- 2.54.0