[[command]]
name = "cppcheck"
description = "Static analyzer for C/C++. Reads source files (or a compile_commands.json) and reports defects to stdout. Does not execute project code. --output-file writes the report to a file (project-local SafeWrite via write_flags). Stable, popular tool."
url = "https://cppcheck.sourceforge.io/"
researched_version = "cppcheck 2.x"
level = "SafeRead"
bare = false
standalone = [
"--addon", "--addon-python",
"--bug-hunting", "--check-config",
"--check-headers", "--check-level",
"--check-library", "--checkers-report",
"--config-exclude", "--debug", "--debug-warnings",
"--debug-symdb", "--disable",
"--dump", "--enable", "--errorlist",
"--exception-handling", "--executor",
"--exitcode-suppressions", "--file-filter",
"--file-list", "--force",
"--help", "--include", "--includes-file",
"--inconclusive", "--inline-suppr",
"--language", "--library", "--max-configs",
"--max-ctu-depth", "--no-cppcheck-build-dir",
"--platform", "--plist-output",
"--profile-translations",
"--project-configurations", "--quiet",
"--relative-paths", "--report-progress",
"--rule", "--rule-file",
"--showtime", "--std", "--suppress",
"--suppress-xml", "--suppressions-list",
"--template", "--template-location",
"--verbose", "--version", "--xml",
"-D", "-U", "-h", "-j", "-l", "-q", "-v",
]
valued = [
"--cppcheck-build-dir", "--config-exclude",
"--exitcode-suppressions", "--executor",
"--include", "--includes-file",
"--language", "--library", "--max-configs",
"--max-ctu-depth", "--output-file",
"--platform", "--rule", "--rule-file",
"--std", "--suppress", "--suppressions-list",
"--template", "--template-location",
"--xml-version",
"-D", "-I", "-U", "-i", "-j", "-l",
]
write_flags = ["--output-file"]