STATIC void GC_wait_for_gc_completion(GC_bool wait_for_all)
{
DCL_LOCK_STATE;
-# if !defined(THREAD_SANITIZER) || !defined(CAN_HANDLE_FORK)
+# if !defined(THREAD_SANITIZER) || !defined(CAN_CALL_ATFORK)
/* GC_lock_holder is accessed with the lock held, so there is no */
/* data race actually (unlike what is reported by TSan). */
GC_ASSERT(I_HOLD_LOCK());
/* protected by allocation lock. */
/* Called before a fork() */
-#ifdef GC_ASSERTIONS
+#if defined(GC_ASSERTIONS) && defined(CAN_CALL_ATFORK)
/* GC_lock_holder is updated safely (no data race actually). */
GC_ATTR_NO_SANITIZE_THREAD
#endif
}
/* Called in parent after a fork() (even if the latter failed). */
-#ifdef GC_ASSERTIONS
+#if defined(GC_ASSERTIONS) && defined(CAN_CALL_ATFORK)
GC_ATTR_NO_SANITIZE_THREAD
#endif
static void fork_parent_proc(void)
}
/* Called in child after a fork() */
-#ifdef GC_ASSERTIONS
+#if defined(GC_ASSERTIONS) && defined(CAN_CALL_ATFORK)
GC_ATTR_NO_SANITIZE_THREAD
#endif
static void fork_child_proc(void)