theraven added a comment. I missed this when it went in and coming across the code now I'm quite surprised that it did. Why is `shared_mutex` not implemented as a wrapper around rwlocks (pthreads and Windows both provide this abstraction)? The current implementation looks a lot less efficient than the system version on any operating system that I'm familiar with and has the added effect that native_handle isn't possible to implement, meaning that these can't easily interoperate with C APIs either.
I don't see a way of fixing this without an ABI break, unfortunately. Perhaps we can provide a better implementation in the __v2 namespace and let users (and platforms that don't care about binary compatibility with older libc++) opt in? https://reviews.llvm.org/D10480 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits