postgres.git / summary / log / commit / refs
commit 8f5e419484c3efb613d971ec25b9bf344db3d0b0
Author: Andrew Dunstan <andrew@dunslane.net>
Date: Mon Apr 07 15:01:15 2025 +0000
First released in: 18.0
Revert "Use workaround of __builtin_setjmp only on MINGW on MSVCRT"
This reverts commit c313fa4602defe1be947370ab5b217ca163a1e3c.
This is found to cause issues on x86_64 Windows even when using UCRT.
Discussion: https://postgr.es/m/3312149.1744001936@sss.pgh.pa.us
src/include/c.h | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/include/c.h b/src/include/c.h
index 94697aab428..8cdc16a0f4a 100644
--- a/src/include/c.h
+++ b/src/include/c.h
@@ -1326,19 +1326,19 @@ extern int fdatasync(int fildes);
/*
* When there is no sigsetjmp, its functionality is provided by plain
* setjmp. We now support the case only on Windows. However, it seems
- * that MinGW-64 has some longstanding issues in its setjmp support when
- * building with MSVCRT, so on that toolchain we cheat and use gcc's builtins.
+ * that MinGW-64 has some longstanding issues in its setjmp support,
+ * so on that toolchain we cheat and use gcc's builtins.
*/
#ifdef WIN32
-#if defined(__MINGW64__) && !defined(_UCRT)
+#ifdef __MINGW64__
typedef intptr_t sigjmp_buf[5];
#define sigsetjmp(x,y) __builtin_setjmp(x)
#define siglongjmp __builtin_longjmp
-#else /* !defined(__MINGW64__) || defined(_UCRT) */
+#else /* !__MINGW64__ */
#define sigjmp_buf jmp_buf
#define sigsetjmp(x,y) setjmp(x)
#define siglongjmp longjmp
-#endif /* defined(__MINGW64__) && !defined(_UCRT) */
+#endif /* __MINGW64__ */
#endif /* WIN32 */
/* /port compatibility functions */
[parent: 8ce79483dc47]