This checker finds STL thread primitives misuse.
- std::mutex::unlock without std::mutex::lock
- std::recursive_mutex ::unlock without std::recursive_mutex ::lock
- std::mutex::lock twice
In future:
- std::mutex::lock without std::mutex::unlock (discuss)
- try_lock function
P.S. This is an alpha version of my first checker. Do not hesitate to express your complaints!
CallDescriptionMap is the modern API for this stuff.