Cppcheck Explained
Cppcheck |
Author: | Daniel Marjamäki |
Programming Language: | C++ |
Operating System: | Cross-platform |
Language: | English, Dutch, Finnish, Swedish, German, Russian, Japanese, Serbian, Spanish, French, Italian, Korean, Chinese |
Genre: | Static code analysis |
License: | GNU General Public License |
Cppcheck is a static code analysis tool for the C and C++ programming languages. It is a versatile tool that can check non-standard code.[1] The creator and lead developer is Daniel Marjamäki.
Cppcheck is free software under the GNU General Public License.
Features
Cppcheck supports a wide variety of static checks that may not be covered by the compiler itself. These checks are static analysis checks that can be performed at a source code level. The program is directed towards static analysis checks that are rigorous, rather than heuristic in nature.
Some of the checks that are supported include:
As with many analysis programs, there are many unusual cases of programming idioms that may be acceptable in particular target cases or outside of the programmer's scope for source code correction. A study conducted in March 2009 identified several areas where false positives were found by Cppcheck, but did not specify the program version examined.[3] Cppcheck has been identified for use in systems such as CERNs 4DSOFT meta analysis package,[4] for code verification in high energy particle detector readout devices,[5] system monitoring software for radio telescopes[6] as well as in error analysis of large projects, such as OpenOffice.org[7] and the Debian archive.[8]
Development
The project is actively under development[9] and is actively maintained in different distributions.[10] [11] It has found valid bugs in a number of popular projects[12] such as the Linux kernel and MPlayer.[13]
Plugins
Plugins for the following IDEs or text editors exist[14]
See also
Notes and References
- Web site: A Survey of C and C++ Software Tools for Computational Science. Science and Technologies Facility Council. Chilbolton, Daresbury, and Rutherford Appleton Laboratories. 14 September 2010. 14. December 2009. dead. https://web.archive.org/web/20120312224600/http://www.softeng.rl.ac.uk/media/uploads/publications/2010/03/c-c_tools_report.pdf. 12 March 2012.
- Web site: System Interfaces. 2020-09-24. pubs.opengroup.org.
- Web site: Static Code Analysis For Embedded Systems.
- Web site: Dissemination and use of knowledge plan (EU Deliverable DNA2.11. 2010. 2010-09-15. 2013-06-04. https://web.archive.org/web/20130604115641/https://etics.web.cern.ch/etics/deliverables/ETICS-DNA2%2011-1065007-Dissemination_Use_Knowledge_Plan-v1%201.pdf. dead.
- Web site: Entwurf und Implementierung eines adaptiven, strahlentoleranten eingebetteten Systems am Beispiel eines Read-Out-Controllers (En: Development and implementation of an adaptive, radiation tolerant embedded system for operation of a Read-Out controller). 2010. dead. https://web.archive.org/web/20120311001129/http://www.kip.uni-heidelberg.de/tip/root/img/pool/literature/theses/2009_mueller-klieser_stefan.pdf. 2012-03-11.
- Web site: The Wettzell System Monitoring Concept and First Realizations. 2010. 447. International VLBI Service for Geodesy & Astrometry.
- Web site: Hunting for vulnerabilities in large software : the OpenOffice suite. 2010-09-15. 2012-09-28. https://web.archive.org/web/20120928061319/http://www.cl.cam.ac.uk/~wmk26/openoffice/openoffice9.pdf. dead.
- Web site: Introducing the "Debian's Automated Code Analysis" (DACA) project. LWN.net.
- https://github.com/danmar/cppcheck/ Cppcheck on Github
- http://packages.qa.debian.org/c/cppcheck.html Cppcheck on Debian's Package Tracking System
- http://svnweb.freebsd.org/ports/head/devel/cppcheck/distinfo FreeBSD port
- Web site: List of user reported bugs found by cppcheck.
- Web site: Found Bugs list. https://web.archive.org/web/20131014013121/http://sourceforge.net/apps/mediawiki/cppcheck/index.php?title=Found_bugs. 2013-10-14. SourceForge.
- Web site: SourceForge.net: cppcheck . https://archive.today/20120718020019/http://sourceforge.net/apps/mediawiki/cppcheck . dead . 2012-07-18 . sourceforge.net .
- Web site: cppcheck plugin for CLion . plugins.jetbrains.com.
- Web site: Cppcheclipse . github.com.
- Web site: Flycheck . github.com.
- Web site: gedit Cppcheck plugin . https://archive.today/20121217133145/https://github.com/odamite/gedit-cppcheck . dead . 2012-12-17 . github.com .
- Web site: Cppcheck Plugin . hudson-ci.org . 2010-09-15 . https://web.archive.org/web/20171026175153/http://wiki.hudson-ci.org/display/HUDSON/Cppcheck+Plugin . 2017-10-26 . dead .
- Web site: Cppcheck Plugin . jenkins-ci.org. 20 May 2022 .
- Web site: Kate Project Plugin News – Code Analysis. Cullmann. Christoph. 2013-02-02. Kate Get an Edge in Editing. 2016-12-14.
- Web site: KDevelop's Cppcheck plugin merged into kdevelop.git, will be released with 5.1. Funk. Kevin. 2016-12-06. 2016-12-14.
- Web site: Qt Creator Plug-in Gallery . Qt Wiki.
- Web site: Sublimelinter plugin . github.com.
- Web site: Cppcheck add-in . Visual Studio Marketplace.
- Web site: VioletGiraffe. Homepage cppcheck-vs-addin. . 3 March 2014.
- Web site: Srix. Simple open source static analysis tool for Visual Studio. 27 August 2012. https://web.archive.org/web/20150210000727/http://www.technosrix.com/simple-open-source-static-analysis-tool-for-visual-studio/. 2015-02-10.
- Web site: Yasca . Scovetta . Michael .