Merge pull request #240 from omochi/tls-nsmutabledictionary
WaiterManager inherit NSObject to insert into NSMutableDictionary
diff --git a/Sources/XCTest/Private/WaiterManager.swift b/Sources/XCTest/Private/WaiterManager.swift
index 7c1feba..f705165 100644
--- a/Sources/XCTest/Private/WaiterManager.swift
+++ b/Sources/XCTest/Private/WaiterManager.swift
@@ -26,7 +26,7 @@
/// This class manages the XCTWaiter instances which are currently waiting on a particular thread.
/// It facilitates "nested" waiters, allowing an outer waiter to interrupt inner waiters if it times
/// out.
-internal final class WaiterManager<WaiterType: ManageableWaiter> {
+internal final class WaiterManager<WaiterType: ManageableWaiter> : NSObject {
/// The current thread's waiter manager. This is the only supported way to access an instance of
/// this class, since each instance is bound to a particular thread and is only concerned with
@@ -53,7 +53,7 @@
private let queue = DispatchQueue(label: "org.swift.XCTest.WaiterManager")
// Use `WaiterManager.current` to access the thread-specific instance
- private init() {}
+ private override init() {}
deinit {
assert(managedWaiterStack.isEmpty, "Waiters still registered when WaiterManager is deallocating.")