User annotations for PVS-Studio C++ analyzer
The PVS-Studio C++ analyzer now provides a mechanism for user annotations. It's a way of marking up types and functions in JSON format in order to provide the analyzer with additional information. Due to this information, the analyzer can find more errors in code. The annotations are specified in a special JSON format file. Among other things, user annotations enable you to mark a function as unsafe to use, define its own type as nullable, etc. You can learn more about the mode in the documentation.
Unreal Engine integration enhancements
We significantly enhanced the PVS-Studio integration with Unreal Engine. The enhancements are available starting with UE version 5.4.
Extension of individual file analysis mode
The system of analyzing individual files by using the --sourceFiles flag and re-generating the project dependency cache was extended. Now this mode is more robust to scenarios where the dependency cache is in a state that does not match the project structure. It can happen, for example, if multiple branches are used in a version control system. Moreover, we added the option to run the analysis with a full cache update: this enables you to analyze a project with a fully correct cache of dependencies in case there is no way to keep it up to date.
Support for RISC-V platform
Now the C++ analyzer supports the GNU RISC-V GCC Toolchain for the RISC-V platform.