class XBT_PUBLIC Mutex {
friend ConditionVariable;
friend kernel::activity::MutexImpl;
+ friend void kernel::activity::intrusive_ptr_release(kernel::activity::MutexImpl* mutex);
kernel::activity::MutexImpl* const pimpl_;
/* refcounting */
friend XBT_PUBLIC void intrusive_ptr_release(const Mutex* mutex);
explicit Mutex(kernel::activity::MutexImpl* mutex) : pimpl_(mutex) {}
+ ~Mutex() = default;
#ifndef DOXYGEN
Mutex(Mutex const&) = delete; // No copy constructor; Use MutexPtr instead
Mutex& operator=(Mutex const&) = delete; // No direct assignment either. Use MutexPtr instead