@@ -22,17 +22,23 @@ /** * @class OFRecursiveMutex OFRecursiveMutex.h ObjFW/OFRecursiveMutex.h * * @brief A class for creating mutual exclusions which can be entered * recursively. + * + * If the mutex is deallocated while being held, it throws an + * @ref OFStillLockedException. While this might break ARC's assumption that no + * object ever throws in dealloc, it is considered a fatal programmer error + * that should terminate the application. */ OF_SUBCLASSING_RESTRICTED @interface OFRecursiveMutex: OFObject { OFPlainRecursiveMutex _rmutex; bool _initialized; OFString *_Nullable _name; + OF_RESERVE_IVARS(OFRecursiveMutex, 4) } /** * @brief Creates a new recursive mutex. *