diff options
author | Ivan Maidanski <ivmai@mail.ru> | 2022-09-27 19:21:40 +0300 |
---|---|---|
committer | Ivan Maidanski <ivmai@mail.ru> | 2022-09-27 19:21:40 +0300 |
commit | f55f26caf1f4a5ff17364a955162db7c5bdf273f (patch) | |
tree | f1096850ee3aac4206796dc28ce158e077b1fabf /win32_threads.c | |
parent | ed081c23858e03e2ad62ffe59e407fb7d43b2d3d (diff) | |
download | bdwgc-f55f26caf1f4a5ff17364a955162db7c5bdf273f.tar.gz |
Define internal macro NO_SEH_AVAILABLE where SEH is absent
(refactoring)
* include/private/gc_priv.h [WRAP_MARK_SOME]: Replace
!MSWIN32&&!MSWINCE||__GNUC__ to NO_SEH_AVAILABLE in ifdef.
* mark.c [WRAP_MARK_SOME] (GC_mark_some): Likewise.
* os_dep.c [WRAP_MARK_SOME] (GC_fault_handler_t, GC_jmp_buf): Likewise.
* include/private/gcconfig.h [!MSWIN32 && !MSWINCE || __GNUC__
|| NO_CRT] (NO_SEH_AVAILABLE): Define.
* mark.c [WRAP_MARK_SOME] (GC_mark_some): Refine comments.
* os_dep.c (MIN_PAGE_SIZE): Define regardless of WRAP_MARK_SOME.
* win32_threads.c (GC_win32_start_inner): Replace !__GNUC__&&!NO_CRT
to !NO_SEH_AVAILABLE in ifdef.
Diffstat (limited to 'win32_threads.c')
-rw-r--r-- | win32_threads.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/win32_threads.c b/win32_threads.c index ba0d6ba7..31ad84f9 100644 --- a/win32_threads.c +++ b/win32_threads.c @@ -2529,14 +2529,14 @@ GC_INNER void GC_get_next_stack(char *start, char *limit, /* 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. */ -# if !defined(__GNUC__) && !defined(NO_CRT) +# ifndef NO_SEH_AVAILABLE ret = NULL; /* to suppress "might be uninitialized" compiler warning */ __try # endif { ret = (void *)(word)(*start)(param); } -# if !defined(__GNUC__) && !defined(NO_CRT) +# ifndef NO_SEH_AVAILABLE __finally # endif { |