summaryrefslogtreecommitdiff
path: root/boehm-gc/win32_threads.c
diff options
context:
space:
mode:
authormegacz <megacz@138bc75d-0d04-0410-961f-82ee72b054a4>2002-03-12 19:06:36 +0000
committermegacz <megacz@138bc75d-0d04-0410-961f-82ee72b054a4>2002-03-12 19:06:36 +0000
commit2da4cb5f26a0b54af5f0d6eb4b33e2e91ad5f4aa (patch)
treeba69ee2014e9ab9f0759258ec9d82f1ac809d901 /boehm-gc/win32_threads.c
parent9f58be3ba2024b27d4658930792b224406fb59f2 (diff)
downloadgcc-2da4cb5f26a0b54af5f0d6eb4b33e2e91ad5f4aa.tar.gz
2002-03-12 Adam Megacz <adam@xwt.org>
* dyn_load.c: Renamed GC_win32s to GC_no_win32_dlls. * misc.c: Renamed GC_is_win32s() to GC_no_win32_dlls * os_dep.c: Renamed GC_win32s to GC_no_win32_dlls and statically initialized it to TRUE if compiling with GCC. * win32_threads.c (thread_start): We no longer use SEH if compiling with GCC. * mark.c (GC_mark_some): We no longer use SEH if compiling with GCC. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@50671 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'boehm-gc/win32_threads.c')
-rw-r--r--boehm-gc/win32_threads.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/boehm-gc/win32_threads.c b/boehm-gc/win32_threads.c
index 980faf34d94..38de099fa87 100644
--- a/boehm-gc/win32_threads.c
+++ b/boehm-gc/win32_threads.c
@@ -447,16 +447,22 @@ static DWORD WINAPI thread_start(LPVOID arg)
/* Clear the thread entry even if we exit with an exception. */
/* This is probably pointless, since an uncaught exception is */
/* supposed to result in the process being killed. */
+#ifndef __GNUC__
__try {
+#endif /* __GNUC__ */
ret = args.start (args.param);
+#ifndef __GNUC__
} __finally {
+#endif /* __GNUC__ */
LOCK();
args.entry->stack = 0;
args.entry->in_use = FALSE;
/* cast away volatile qualifier */
BZERO((void *) &args.entry->context, sizeof(CONTEXT));
UNLOCK();
+#ifndef __GNUC__
}
+#endif /* __GNUC__ */
return ret;
}