https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124444
Jonathan Wakely <redi at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Assignee|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org
Status|NEW |ASSIGNED
--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Actually we can just do this:
--- a/libstdc++-v3/include/ext/concurrence.h
+++ b/libstdc++-v3/include/ext/concurrence.h
@@ -242,9 +242,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__scoped_lock& operator=(const __scoped_lock&);
public:
+ _GLIBCXX20_CONSTEXPR
explicit __scoped_lock(__mutex_type& __name) : _M_device(__name)
{ _M_device.lock(); }
+ _GLIBCXX20_CONSTEXPR
~__scoped_lock() throw()
{ _M_device.unlock(); }
};
Testing it now ...