postgres.git / summary / log / commit / refs
commit cd55abab4fa451b28ea19041ee1c5260c79c8cbf
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: Sun Nov 02 17:30:44 2025 +0000
Avoid mixing void and integer in a conditional expression.
The C standard says that the second and third arguments of a
conditional operator shall be both void type or both not-void
type. The Windows version of INTERRUPTS_PENDING_CONDITION()
got this wrong. It's pretty harmless because the result of
the operator is ignored anyway, but apparently recent versions
of MSVC have started issuing a warning about it. Silence the
warning by casting the dummy zero to void.
Reported-by: Christian Ullrich <chris@chrullrich.net>
Author: Bryan Green <dbryan.green@gmail.com>
Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us>
Discussion: https://postgr.es/m/cc4ef8db-f8dc-4347-8a22-e7ebf44c0308@chrullrich.net
Backpatch-through: 13
src/include/miscadmin.h | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/include/miscadmin.h b/src/include/miscadmin.h
index 4438c09cee8..73f09587c4e 100644
--- a/src/include/miscadmin.h
+++ b/src/include/miscadmin.h
@@ -113,7 +113,8 @@ extern void ProcessInterrupts(void);
(unlikely(InterruptPending))
#else
#define INTERRUPTS_PENDING_CONDITION() \
- (unlikely(UNBLOCKED_SIGNAL_QUEUE()) ? pgwin32_dispatch_queued_signals() : 0, \
+ (unlikely(UNBLOCKED_SIGNAL_QUEUE()) ? \
+ pgwin32_dispatch_queued_signals() : (void) 0, \
unlikely(InterruptPending))
#endif
[parent: 3f76f656f9dc]