Discover the updates in Cppcheck version 2.20!
Cppcheck 2.20 is now available. This release focuses on improving the GUI experience, refining platform behavior, updating build configuration options, and enhancing suppression support. Several usability issues in the graphical interface have been addressed alongside improvements to the build system and platform configuration.
Here are the full release notes for Cppcheck 2.20:
GUI Improvements
Several issues in the graphical interface have been fixed and improved:
- MISRA C checkbox: Fixed an issue where the MISRA C checkbox in the Edit Project dialog became unchecked after reloading a project.
- MISRA report icons: The MISRA report now displays proper icons according to MISRA classifications.
- Platform selection: Platform files are now correctly shown in the dropdown list in the ProjectFileDialog.
- Troubleshooting view: Added a detailed progress view that shows which files analysis threads are currently processing.
These improvements make it easier to manage projects and understand analysis progress in the GUI.
Interface Changes
Some build configuration options have been updated:
- Removed the CMake option DISABLE_CRTDBG_MAP_ALLOC.
- The CMake option BUILD_TESTS has been deprecated and will be removed in Cppcheck 2.22. Users should migrate to BUILD_TESTING instead.
These changes simplify the build configuration and align the project with modern CMake practices.
Platform and Build Improvements
Additional updates improve platform behavior and build compatibility:
- The built-in win and unix platforms now default to signed char instead of unknown signedness. Projects that require unsigned characters can explicitly enable this using: --funsigned-char
- The minimum required CMake version has been increased to 3.22.
- Added support for inline Polyspace suppressions.
These changes improve consistency across platforms and expand compatibility with existing codebases and suppression formats.
Summary
Cppcheck 2.20 improves the GUI with several fixes and usability enhancements, updates build configuration options, refines platform defaults, and adds support for inline Polyspace suppressions. Together, these changes improve the reliability and usability of Cppcheck for both GUI and command-line users.