Cppcheck

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Cppcheck
Original author(s)Daniel Marjamäki
Initial releaseMay 8, 2007; 11 years ago (2007-05-08)
Stable release
1.85 / 14 October 2018; 51 days ago (2018-10-14)[1]
Repository Edit this at Wikidata
Written inC++
Operating systemCross-platform
Available inEnglish, Dutch, Finnish, Swedish, German, Russian, Polish, Japanese, Serbian
TypeStatic code analysis
LicenseGNU General Public License
Websitecppcheck.sourceforge.net

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.[2] The creator and lead developer is Daniel Marjamäki.

Cppcheck is free software under the GNU General Public License.

Features[edit]

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 which 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.[4] Cppcheck has been identified for use in systems such as CERNs 4DSOFT meta analysis package,[5] for code verification in high energy particle detector readout devices,[6] system monitoring software for radio telescopes[7] as well as in error analysis of large projects, such as OpenOffice.org[8] and the Debian archive.[9]

Development[edit]

The project is actively under development[10] and is actively maintained in different distributions.[11][12] It has found valid bugs in a number of popular projects[13] such as the Linux kernel and MPlayer.[14]

Plugins[edit]

Plugins for the following IDEs exist[15]

Visual Studio integration[edit]

The commercial third-party Add-In Visual Lint by British company Riverblade can be used to integrate CppCheck in Visual Studio.[28] There is also an open source plugin cppcheck-vs-addin[29] available. It is also possible to add Cppcheck as an external tool.[30]

See also[edit]

References[edit]

  1. ^ "Releases - danmar/cppcheck". Retrieved 15 June 2018 – via GitHub.
  2. ^ "A Survey of C and C++ Software Tools for Computational Science" (PDF). Science and Technologies Facility Council. Chilbolton, Daresbury, and Rutherford Appleton Laboratories. December 2009. p. 14. Archived from the original (PDF) on 12 March 2012. Retrieved 14 September 2010.
  3. ^ http://www.opengroup.org/onlinepubs/9699919799/xrat/V4_xsh_chap03.html
  4. ^ "Static Code Analysis For Embedded Systems" (PDF).
  5. ^ "Dissemination and use of knowledge plan (EU Deliverable DNA2.11" (PDF). 2010.
  6. ^ "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)" (PDF). 2010. Archived from the original (PDF) on 2012-03-11.
  7. ^ "The Wettzell System Monitoring Concept and First Realizations" (PDF). International VLBI Service for Geodesy & Astrometry. 2010. p. 447.
  8. ^ "Hunting for vulnerabilities in large software : the OpenOffice suite" (PDF).
  9. ^ "Introducing the "Debian's Automated Code Analysis" (DACA) project". LWN.net.
  10. ^ Cppcheck on Github
  11. ^ Cppcheck on Debian's Package Tracking System
  12. ^ FreeBSD port
  13. ^ "List of user reported bugs found by cppcheck".
  14. ^ "Found Bugs list". SourceForge. Archived from the original on 2013-10-14.
  15. ^ "SourceForge.net: cppcheck". sourceforge.net.
  16. ^ "cppcheck plugin for CLion". plugins.jetbrains.com.
  17. ^ "Cppcheclipse". github.com.
  18. ^ "Flycheck". github.com.
  19. ^ "gedit Cppcheck plugin". github.com.
  20. ^ "Cppcheck Plugin". hudson-ci.org.
  21. ^ "Cppcheck Plugin". jenkins-ci.org.
  22. ^ Cullmann, Christoph (2013-02-02). "Kate Project Plugin News – Code Analysis". Kate | Get an Edge in Editing. Retrieved 2016-12-14.
  23. ^ Funk, Kevin (2016-12-06). "KDevelop's Cppcheck plugin merged into kdevelop.git, will be released with 5.1". Retrieved 2016-12-14.
  24. ^ "Qt Creator Plug-in Gallery". Qt Wiki.
  25. ^ "Sublimelinter plugin". github.com.
  26. ^ "Cppcheck add-in". Visual Studio Marketplace.
  27. ^ Scovetta, Michael. "Yasca".
  28. ^ Riverblade. "Visual Lint homepage". Retrieved 11 December 2012.
  29. ^ VioletGiraffe. "Homepage cppcheck-vs-addin". Retrieved 3 March 2014.
  30. ^ Srix. "Simple open source static analysis tool for Visual Studio". Archived from the original on 2015-02-10. Retrieved 27 August 2012.

External links[edit]