From 0403dd8a0aac93d3e3c4a7ae2566633362a93971 Mon Sep 17 00:00:00 2001 From: Mike Ash Date: Fri, 22 Aug 2025 15:37:46 -0400 Subject: [PATCH] [Runtime] Fix recursive_mutex_handle when getting os_unfair_recursive_lock from the SDK. The declaration was inside the #if, which makes it unavailable when the condition is not true. Move the declaration outside the #if. rdar://158956741 --- include/swift/Threading/Impl/Darwin.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/swift/Threading/Impl/Darwin.h b/include/swift/Threading/Impl/Darwin.h index f27d47acf78e0..2cb48dc0bfff7 100644 --- a/include/swift/Threading/Impl/Darwin.h +++ b/include/swift/Threading/Impl/Darwin.h @@ -144,8 +144,6 @@ typedef struct os_unfair_recursive_lock_s { uint32_t ourl_count; } os_unfair_recursive_lock, *os_unfair_recursive_lock_t; -using recursive_mutex_handle = os_unfair_recursive_lock; - extern "C" void os_unfair_recursive_lock_lock_with_options(os_unfair_recursive_lock_t lock, uint32_t options); @@ -155,6 +153,8 @@ os_unfair_recursive_lock_unlock(os_unfair_recursive_lock_t lock); #endif // OS_UNFAIR_RECURSIVE_LOCK_INIT +using recursive_mutex_handle = os_unfair_recursive_lock; + inline void recursive_mutex_init(recursive_mutex_handle &handle, bool checked = false) { handle = OS_UNFAIR_RECURSIVE_LOCK_INIT;