CheckOps
Cppcheck
Cppcheck is a GPL-3.0 static analysis tool for C and C++ that focuses on detecting undefined behaviour and real bugs with a low false-positive rate.
Latest public signals
Not refreshed yet. Refresh reads the public site and, when the entry has a GitHub repository, the latest release.
Introduction
Cppcheck is a static analysis tool for C and C++ code. It aims to detect bugs that compilers usually miss, especially undefined behaviour and dangerous coding constructs, and the project emphasises keeping false positives low.
Checks include out-of-bounds access, null pointer dereferences, uninitialised variables, memory and resource leaks, invalid iterator use and integer overflows. It can parse code with non-standard syntax common in embedded projects, supports compile_commands.json, and produces XML and other outputs for CI. A premium edition adds coding-standard checks such as MISRA and CERT.
In the quality loop Cppcheck is a lightweight static gate for C and C++ builds.
The source code is at cppcheck-opensource/cppcheck on GitHub under the GPL-3.0 licence, with about 6,800 stars; the most recent commit was on 10 November 2026.
Features
- Undefined behaviour checks: Bounds, null, uninitialised values and more.
- Leak detection: Memory and resource leaks.
- Embedded friendly: Handles non-standard syntax.
- Compile database: Uses compile_commands.json.
- GUI and CLI: Both available.
- XML output: For CI tools.
Pros
- Low false positives: Designed to report likely real issues.
- Free to use: Open source under the GPL-3.0 licence, so the core tool costs nothing to use.
- Actively maintained: The repository had commits as recent as 10 November 2026.
- Community: About 6,800 GitHub stars.
Cons
- Shallower than commercial tools: Less inter-procedural depth.
- Configuration for macros: Complex builds need include and define setup.
- Coding standards in premium: MISRA and CERT need the paid edition.
Usage and Links (Example)
cppcheck --enable=warning,performance,portability --project=build/compile_commands.json --xml 2> cppcheck.xml
Resources:
Pricing
Cppcheck is free and open source under the GPL-3.0 licence.
Recommended for?
- C and C++ teams wanting a free static check.
- Embedded projects with unusual compilers.
Conclusion
Cppcheck is a practical, low-noise static analyser for C and C++.
Use it in CI alongside compiler warnings and sanitizers.
On CheckOps, Cppcheck is filed under the Release & CI gates and Security testing stages. Related tools listed here include Infer, CodeQL, Semgrep, GoogleTest, Mull and SonarQube. A short trial on a real project, with your own code, data and pipeline, is usually the fastest way to choose between them, because fit matters more than feature lists. Facts here come from the official site, documentation and repository, checked on 11 November 2026.
Alternatives
Other tools on CheckOps that cover similar ground. Open a page, or compare one with Cppcheck side by side.
IInferInfer is an MIT static analyser from Meta for Java, C, C++ and Objective-C that finds null dereferences, resource leaks, races and other bugs with inter-procedural analysis.Compare with Cppcheck
CCodeQLCodeQL is GitHub's semantic code analysis engine: it builds a queryable database from source code and runs security queries (MIT-licensed standard library) to find vulnerabilities, powering GitHub code scanning.Compare with Cppcheck
SSemgrepSemgrep is a fast static-analysis engine with a free open-source CLI and a paid platform for cross-file rules, supply chain, and secrets.Compare with Cppcheck
GGoogleTestGoogleTest is Google's BSD-3-Clause C++ test framework, merged with GoogleMock, providing xUnit-style tests, rich assertions, death tests, parameterised and typed tests, and C++ mocking.Compare with Cppcheck
MMullMull is an Apache-2.0 LLVM-based mutation testing and fault injection tool for C and C++ that mutates code at compile time and reports surviving mutants.Compare with Cppcheck
SSonarQubeModernize your AI workflows with code verification for the agentic era.Compare with Cppcheck