- Mention the name of the virtual function. This should help when the warning appears in a complicated expression and it's unclear what part of the expression it is about.
- Calling a pure virtual function always sinks the analysis, even if the checker is not in pure-only mode.
- Refactor/modernize the code a bit.
- Fix checker names for consumers that display them (eg., clang-tidy). Add a test.
- Change bug descriptions: "Call to virtual function during construction or destruction" -> "Pure virtual method call" | "Unexpected loss of virtual dispatch"
- Remove the suggestion to explicitly qualify the call. It is incorrect for nested stack frames, as it may affect the behavior when the same function is called from elsewhere.
- Make the category reusable, fix capitalization to stay similar to other bug categories.