winget install --id Cppcheck.Cppcheck
About Cppcheck
Cppcheck is a static analysis tool for C/C++ code. Unlike C/C++ compilers and many other analysis tools it does not detect syntax errors in the code. Cppcheck primarily detects the types of bugs that the compilers normally do not detect. The goal is to detect only real errors in the code (i.e. have zero false positives).
What's new in 2.20.0
Release Notes for Cppcheck 2.20 GUI: - Fix: The Misra C checkbox in "Edit Project" dialog is unchecked after reloading project. - Fix: In the Misra Report, use proper icons according to misra classifications - Fix: The platform files are not shown in the dropdown in ProjectFileDialog - Troubleshooting: detailed progress view that shows what files the threads are working on Changed interface: - removed CMake option "DISABLE_CRTDBG_MAP_ALLOC" - CMake option "BUILD_TESTS" has been deprecated and will be removed in Cppcheck 2.22 - use "BUILD_TESTING" instead Other: - The built-in "win*" and "unix*" platforms will now default to signed char type instead of unknown signedness. If you require unsigned chars please specify "--funsigned-char" - bumped minimum required CMake version to 3.22 - Support inline polyspace suppressions
Version history
| Version | Updated | Notes |
|---|---|---|
| 2.20.0 | Unknown | Release Notes for Cppcheck 2.20 GUI: - Fix: The Misra C checkbox in "Edit Project" dialog is unchecked after reloading project. - Fix: In the Misra Report, use proper icons according to misra classifications - Fix: The p... |
| 2.19.0 | Unknown | Release Notes for Cppcheck 2.19 Major bug fixes & crashes: - Crash in CheckClass::checkConst() - fuzzing crash (assert) in Token::update_property_info() - Crash in checkConstVariable() - Crash in valueFlowLifetimeClassCo... |
| 2.18.0 | Unknown | Release notes |
| 2.17.1 | Unknown | Release notes |
| 2.16.0 | Unknown | Release notes |
| 2.15.0 | Unknown | Release notes |
| 2.14.2 | Unknown | Release notes |
| 2.14.1 | Unknown | Release notes |
| 2.14.0 | Unknown | Release notes |
| 2.13.0 | Unknown | Release notes |
| 2.12.0 | Unknown | - uselessOverride finds overriding functions that either duplicate code from or delegate back to the base class implementation - knownPointerToBool finds pointer to bool conversions that are always true or false - truncL... |
| 2.11 | Unknown | - pop_back on empty container is UB - Improve useStlAlgorithm check to handle many more conditions in the loop for any_of, all_of and none_of algorithms - ValueFlow can evaluate the return value of functions even when co... |
| 2.10 | Unknown | Release notes |
| 2.9 | Unknown | Release notes |
| 2.8 | Unknown | Release notes |
| 2.7 | Unknown | Release notes |
| 2.6 | Unknown | No notes |
| 2.5 | Unknown | No notes |
| 2.4.1 | Unknown | No notes |
| 2.3 | Unknown | No notes |