summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/winsup.h
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/winsup.h')
-rw-r--r--winsup/cygwin/winsup.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/winsup/cygwin/winsup.h b/winsup/cygwin/winsup.h
index 654e5b1ed..770d4bb1c 100644
--- a/winsup/cygwin/winsup.h
+++ b/winsup/cygwin/winsup.h
@@ -285,9 +285,16 @@ extern "C" char _data_start__, _data_end__, _bss_start__, _bss_end__;
extern "C" void (*__CTOR_LIST__) (void);
extern "C" void (*__DTOR_LIST__) (void);
+#ifdef NEEDED
+/* This was inexplicably needed after updating a toolchain.
+ The need disappeared when updating further but I'm keeping
+ it around temporarily in case the issue crops up again.
+ This manifests as SEGVs in one of the Interlocked functions below
+ in kernel32.dll. */
#define InterlockedDecrement _InterlockedDecrement
#define InterlockedExchange _InterlockedExchange
#define InterlockedIncrement _InterlockedIncrement
+#endif /*NEEDED*/
#ifndef NO_GLOBALS_H
#define _RDATA /* See globals.h */